package com.david.service;

import com.david.entity.Employee;
import com.david.vo.CardBean;
import com.david.vo.EmployeeBean;
import com.david.vo.EmployeeCondition;

import java.util.List;

public interface EmployeeInterface {

    /**
     * 获取所有员工
     * @param page 页数
     * @param limit 限制
     * @return 返回员工
     */
    EmployeeBean getAllEmployee(Integer page, Integer limit);

    /**
     * 增加员工
     * @param employee 员工信息
     * @return 返回状态
     */
    CardBean saveEmployee(Employee employee);

    /**
     * 删除员工
     * @param id 输入id
     * @return 返回状态
     */
    CardBean deleteEmployee(Integer id);

    /**
     * 批量删除
     * @param ids 输入id列表
     * @return 返回状态
     */
    CardBean batchDelete(Integer[] ids);

    /**
     * 按条件查找员工
     * @param employeeCondition 输入条件
     * @return 返回符合条件的员工列表
     */
    EmployeeBean<List<Employee>> findEmployeeByCondition(EmployeeCondition employeeCondition);

    /**
     * 更新员工信息
     * @param employee 输入员工信息
     * @return 返回状态
     */
    CardBean updateEmployee(Employee employee);
}
